const app = getApp();
import { getPhone ,isRegister} from '../../api/tbPersonal'

const user = require('../../services/user.js');
Page({
  data: {
    //判断小程序的API，回调，参数，组件等是否在当前版本可用。
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
    isAuth: true,


    showModalStatus:false,
  },
  onLoad: function (options) {
    var that = this;

    console.log(options)



    // 查看是否授权
    if(wx.getStorageSync('isRegister')){
      if(wx.getStorageSync('roleType') =='2'||wx.getStorageSync('roleType') =='3'){
        wx.reLaunch({
          url: '/pages/ngl/ngl'
        })
      }else if(wx.getStorageSync('roleType') =='4'||wx.getStorageSync('roleType') =='1'){
        wx.reLaunch({
          url: '/pages/ngl/ngl'
        })
      }else{
        wx.reLaunch({
          url: '/pages/ngl/ngl'
        })
      }
    }else{

    }

    wx.getSetting({
      success: function (r) {
        console.info(r)
        if (r.authSetting['scope.userInfo']) {
          wx.getUserInfo({
            success: function (res) {
              console.info("已授权",res)
              app.globalData.userInfo =res.userInfo
            }
          })
        } else {
          console.info("未授权")
          that.setData({
            isAuth: false
          })
        }
      }
    })
    if(wx.getStorageSync('isHasInfo')){
      this.setData({
        isAuth: true
      });
    }

 
  },
  // _loginUer() {
  //   const _this = this;
  //   wx.login({
  //     success: re => {
  //       const code = re.code;
  //       api.login({
  //         url: api.ROOT_PATH + 'getAuthOrAutoLogin?code=' + code,
  //         sucFunc: function (res) {
  //           const userInfo = res.data.userInfo;
  //           //获取微信用户信息
  //           wx.getUserInfo({
  //             success: function (resDa) {
  //               console.info(resDa);
  //               //1.判断是否openId登录
  //               if (userInfo == undefined) {
  //                 //1.1没有openId登录,走unionId登录
  //                 //解密unionId 后期放在后台
  //                 const sessionKey = res.data.sessionKey;
  //                 const encryptedData = resDa.encryptedData;
  //                 const ivStr = resDa.iv;
  //                 api.login({
  //                   url: api.ROOT_PATH + "autoLoginByUnionId",
  //                   data: {
  //                     sessionKey: sessionKey,
  //                     encryptedData: encryptedData,
  //                     ivStr: ivStr
  //                   },
  //                   method: 'post',
  //                   sucFunc: function (resData) {
  //                     const { userInfo, unionId, openId } = resData.data;
  //                     console.info(resData.data)
  //                     if (userInfo == undefined) {
  //                       //没有登录
  //                       wx.setStorageSync('wxUserInfo', {
  //                         unionId: unionId,
  //                         openId: openId,
  //                         avatarUrl: resDa.userInfo.avatarUrl
  //                       });
  //                       wx.navigateTo({
  //                         url: '/pages/login/index',
  //                       })
  //                     } else {
  //                       //已登录
  //                       if (resDa.userInfo && resDa.userInfo.avatarUrl) {
  //                         userInfo['avatarUrl'] = resDa.userInfo.avatarUrl;
  //                         userInfo['wxNickName'] = resDa.userInfo.nickName;
  //                       }
  //                       wx.setStorageSync('wxUserInfo', {
  //                         userInfo
  //                       });
  //                       wx.reLaunch({
  //                         url: '/pages/home/index'
  //                       })
  //                     }
  //                   },
  //                   failFunc: function (res) {
  //                     _this.setData({
  //                       isAuth: false
  //                     });
  //                   }
  //                 })

  //               } else {
  //                 //openId已登录
  //                 if (resDa.userInfo && resDa.userInfo.avatarUrl) {
  //                   userInfo['avatarUrl'] = resDa.userInfo.avatarUrl;
  //                   userInfo['wxNickName'] = resDa.userInfo.nickName;

  //                 }
  //                 wx.setStorageSync('wxUserInfo', {
  //                   userInfo
  //                 });
  //                 wx.reLaunch({
  //                   url: '/pages/home/index'
  //                 })

  //               }
  //             },
  //             fail: function (res) {
  //               console.log(res);
  //               _this.setData({
  //                 isAuth: false
  //               });
  //             }
  //           });
  //         },
  //         failFunc: function (res) {
  //           console.info(res);
  //           _this.setData({
  //             isAuth: false
  //           });
  //         }
  //       });
  //     }
  //   })
  // },
  cancelGetUserInfo: function () {
    wx.navigateBack({
      delta: 1,  // 返回上一级页面。
      success: function () {
        console.log('成功！')
      }
    })
  },
  bindGetUserInfo: function (e) {
    console.log(e)
    if (e.detail.userInfo) {
      wx.setStorageSync('isHasInfo',true);
      wx.setStorageSync('wxUserInfo', JSON.stringify(e.detail.userInfo));

      console.log('用户点击')
      this.setData({
        isAuth: true,
      });
      this.showModal()
    } else {
      //用户按了拒绝按钮
      // wx.showModal({
      //   title: '警告',
      //   content: '您点击了拒绝授权，将无法进入小程序，请授权之后再进入!!!',
      //   showCancel: false,
      //   confirmText: '返回授权',
      //   success: function (res) {
      //     // 用户没有授权成功，不需要改变 isHide 的值
      //     if (res.confirm) {
      //       console.log('用户点击了“返回授权”');
      //     }
      //   }
      // });
    }
  },
  getPhoneNumber: function (e) {
    if (e.detail.errMsg==='getPhoneNumber:fail user deny') {
      // wx.showModal({
      //   title: '警告',
      //   content: '您点击了拒绝授权，将无法进入小程序，请授权之后再进入!!!',
      //   showCancel: false,
      //   confirmText: '返回授权',
      //   success: function (res) {
      //     // 用户没有授权成功，不需要改变 isHide 的值
      //     if (res.confirm) {
      //       console.log('用户点击了“返回授权”');
      //     }
      //   }
      // });
    }else{
      console.log(e)
      user.login().then((res) => {
        return   isRegister({
          code: res.code,
          encryptedData: e.detail.encryptedData,
          iv: e.detail.iv,
        }).then(res => {
          console.log(res)
          if(res.isRegister  === "0"){
            wx.redirectTo({
              url: '/pages/register/register',
            })
            wx.setStorageSync('phone',res.tbPersonal.telephone);
          }else if(res.isRegister  === "1"||res.isRegister  === "2"||res.isRegister  === "3"||res.isRegister  === "4"){
            wx.setStorageSync('isRegister',true);
            wx.setStorageSync('phone',res.tbPersonal.telephone);
            wx.setStorageSync('roleCode',res.tbRolePersonalRel.roleCode);
            wx.setStorageSync('personalCode',res.tbRolePersonalRel.personalCode);
            wx.redirectTo({
              url: '/pages/ngl/ngl?type='+res.isRegister,
            })
          } 
        })
          //  wx.setStorageSync('isRegister',true);
         
      }).then((res) => {
        console.log(res)
  
      })
     



    }

  },



  showModal: function() {
    // 显示遮罩层
    var animation = wx.createAnimation({
      duration: 200,
      timingFunction: "linear",
      delay: 0
    })
    this.animation = animation
    animation.translateY(300).step()
    this.setData({
      animationData: animation.export(),
      showModalStatus: true
    })
    setTimeout(function() {
      animation.translateY(0).step()
      this.setData({
        animationData: animation.export()
      })
    }.bind(this), 200)
  },
  hideModal: function() {
    // 隐藏遮罩层
    var animation = wx.createAnimation({
      duration: 200,
      timingFunction: "linear",
      delay: 0
    })
    this.animation = animation
    animation.translateY(300).step()
    this.setData({
      animationData: animation.export(),
    })
    setTimeout(function() {
      animation.translateY(0).step()
      this.setData({
        animationData: animation.export(),
        showModalStatus: false
      })
    }.bind(this), 200)
  },

})